Update retained size without causing lock congestion#13213
Update retained size without causing lock congestion#13213sopel39 merged 1 commit intotrinodb:masterfrom
Conversation
|
cc @martint |
core/trino-main/src/main/java/io/trino/operator/DirectExchangeClient.java
Outdated
Show resolved
Hide resolved
core/trino-main/src/main/java/io/trino/operator/DirectExchangeClient.java
Outdated
Show resolved
Hide resolved
768ef6d to
ee4a8a7
Compare
arhimondr
left a comment
There was a problem hiding this comment.
While separating locks is a step in right direction I'm not sure how much this will reduce lock contention in practice. The MemoryContext#setBytes is globally synchronized. And the other code withing the DirectExchangeClient doesn't seem to be doing much (though I could be wrong). After this change the contention will likely move to MemoryContext#setBytes. I think a good question to ask is why poolPage / addPages are even highly contended? Is there a small page problem?
It will probably move to |
|
RN proposal |
|
Could you go into a little more detail on what lock congestion is? I think we'll need to explain things further in the release notes and tell our users why they should care about this. |
We are still assessing how big of an impact it is. In any case calling |
Description
Related issues, pull requests, and links
Documentation
( ) No documentation is needed.
( ) Sufficient documentation is included in this PR.
( ) Documentation PR is available with #prnumber.
( ) Documentation issue #issuenumber is filed, and can be handled later.
Release notes
( ) No release notes entries required.
( ) Release notes entries required with the following suggested text:
Fixes: #13212